In current computer operating system environments, icons are provided for representing items such as files, folders, shortcuts, applications, documents, tasks, and commands. Icons may be used in list views, toolbars, dialog boxes, menus, and other places. Icons may be used to represent all objects of a specific class, such as Microsoft Word documents, Microsoft Excel files, jpeg files, or other types of files.
Icons may include thumbnail images used to represent specific objects, such as a specific jpeg or a specific folder. Icons may be dynamically generated by code run on a user's machine or may be cached. Icons have existed for many years and many applications use existing icon architectures. Application and component developers can, using custom icons and thumbnails, convey as much information about objects as their pixels will allow. However, existing systems do not provide a technique for graphically grouping multiple icons based on properties of the files represented.
Currently, when a user wants to group items having common characteristics, the user often groups the items into a folder. For example, a user can group documents by file type to include one group for Microsoft Word documents, one for Microsoft Excel documents, one for Microsoft PowerPoint documents, etc. A user may also group music by genre, creating separate groups for Pop, Classical, Hip-Hop, etc. While the conventional folder structure and icon may provide easy access to the documents, the generic folder icon fails to provide descriptive information pertaining to items within the folder.
A solution is needed for visually representing these groups to the user. The use of a generic icon such as the generic folder icon to represent groups of items has a number of shortcomings. First, using a generic icon to represent a group will not provide a user with any idea of how many items are in the group. In contrast, in a real-world stack view, a user is able to view an approximate number of items in the stack. It would be desirable to have an icon represent a real-world stack view in which the group of items could be viewed as a stack and in which a viewer can view the size of the stack and see relative stack sizes merely by viewing the stack. Additionally, a solution is needed that allows the user to see the types of items that the stack contains. Furthermore, a solution should be provided that is capable of conveying the concept of an empty stack.
Accordingly, a solution is needed for immediately conveying to a user the size of a stack and the character of items within the stack. The solution should allow users to view stacks of items and infer characteristics of the stack based on the representation of the stack.